No Silver Bullet
概述
著名软件工程论文《No Silver Bullet -- Essence and Accident in Software Engineering》,由Frederick P. Brooks, Jr.于1986年发表,论证了软件工程中不存在能让生产力在十年内提高一个数量级的单一技术。
关键内容
- 核心观点:
- 软件开发的困难分为"本质困难"(essence)和"偶然困难"(accident)
- 本质困难来自概念结构本身的复杂性,无法通过单一技术解决
-
偶然困难是工具和表达方式的不完善,可通过技术改进消除
-
软件的四个本质特性:
- 复杂性(Complexity):软件实体是人类创造的最复杂的东西
- 一致性(Conformity):必须与外部系统、法规、习惯保持一致
- 可变性(Changeability):因易于修改而面临持续变更压力
-
不可见性(Invisibility):缺乏自然的空间表示方式
-
重要影响:
- 批判了1980年代的技术乐观主义
- 影响了软件工程哲学和敏捷运动的思想根基
- 提出了培养"伟大设计师"的重要性
来源
- 16-brooks-no-silver-bullet.md — 论文全文分析
- [[]] —
相关
- Frederick P. Brooks, Jr. — author
- 人月神话 — extends
- 软件工程 — part_of
- 敏捷宣言 — relates_to
- 本质困难 — extends
- 偶然困难 — extends